| Conditions | 2 |
| Total Lines | 19 |
| Code Lines | 18 |
| Lines | 0 |
| Ratio | 0 % |
| Changes | 0 | ||
| 1 | import { Inject } from '@nestjs/common'; |
||
| 13 | |||
| 14 | public async isSatisfiedBy( |
||
| 15 | event: Event, |
||
| 16 | newTime: number = 0 |
||
| 17 | ): Promise<boolean> { |
||
| 18 | const user = event.getUser(); |
||
| 19 | const date = event.getDate(); |
||
| 20 | |||
| 21 | const [eventTime, leaveTime] = await Promise.all([ |
||
| 22 | this.eventRepository.sumOfTimeSpentByUserAndDate(user, date), |
||
| 23 | this.leaveRepository.sumOfDurationLeaveByUserAndDate(user, date) |
||
| 24 | ]); |
||
| 25 | |||
| 26 | const timeSpent = eventTime + leaveTime; |
||
| 27 | const dayTime = event.getId() |
||
| 28 | ? timeSpent - event.getTime() + newTime |
||
| 29 | : timeSpent + event.getTime(); |
||
| 30 | |||
| 31 | return dayTime > Event.MAXIMUM_TIMESPENT_PER_DAY; |
||
| 32 | } |
||
| 34 |